/*
 * Clase basada en el patron de diseño singleton que se encarga de
 * crear una unica instancia para representar a la edificacion
 * metropolis de cada jugador del juego.
 */
package fuente;

import fuente.estructuras.SLL;
import fuente.estructuras.SLLNode;

public class MetropolisSingleton {
    
    private static SLL _jugadoresLista = new SLL(); //Lista de los jugadores que ya tienen su metropolis creada.
    
    private MetropolisSingleton() {
    }
    
    public static Metropolis getInstance(String pNombreJugador) {
        int conta=1;
        SLLNode tmp = _jugadoresLista.getHead();
        while (tmp!= null){
            Metropolis aux=(Metropolis) _jugadoresLista.obtenerPorPosicion(conta);
            if (aux.getNombre().equals(pNombreJugador))
            {
                return aux;
            }
            else{
                tmp=tmp.getNext();
                conta++;  
            }
        }
        _jugadoresLista.meterFinal(new Metropolis(pNombreJugador));
        return new Metropolis(pNombreJugador);
    }
}
